/* Colour and depth inspired by kinopchel-8, without animation libraries. */
:root{--lift-shadow:0 18px 38px #0004;--edge:#b49aff36;--shine:#ffffff14}
:root[data-theme=light]{--bg:#f4f0ff;--panel:#fffcff;--panel-hover:#f1e9ff;--text:#29213e;--muted:#695d7e;--line:#ded3ef;--accent:#7136b8;--accent-soft:#eee1fc;--hero:#eee0ff;--input:#fffaff;--shadow:0 3px 0 #d8c9ec,0 12px 26px #69419b16;--lift-shadow:0 6px 0 #d0b9ec,0 23px 40px #7542aa2b;--edge:#fff;--shine:#ffffffb0}
body{background:radial-gradient(ellipse at 0 8%,#b780ff20,transparent 45%),radial-gradient(ellipse at 100% 35%,#55d8e71c,transparent 40%),radial-gradient(ellipse at 10% 85%,#ff9abb1c,transparent 40%),var(--bg)}
.site-header{background:linear-gradient(110deg,#ac75fa12,#5cc7ef10,#f08dc912),var(--panel);box-shadow:0 4px 20px #5b33820c;border-bottom:1px solid var(--edge)}
.brand-icon{background:linear-gradient(135deg,#d7b4ff,#9673f5 58%,#6c51c3);color:#2d1552;box-shadow:inset 0 2px 1px #fff8,inset 0 -3px 4px #563c8b55,0 4px 0 #7056a4,0 9px 18px #8c53ba33;transform:rotate(-6deg);transition:transform .25s}
.brand:hover .brand-icon{transform:rotate(3deg) translateY(-2px)}
.theme-toggle{background:linear-gradient(145deg,var(--panel),var(--accent-soft));box-shadow:inset 0 1px 0 var(--edge),0 3px 0 var(--line),0 7px 14px #71469c15;transition:transform .2s,box-shadow .2s}
.theme-toggle:active{transform:translateY(3px);box-shadow:inset 0 1px 0 var(--edge)}
.intro{background:radial-gradient(ellipse at 90% 80%,#6ddad93b,transparent 65%),radial-gradient(ellipse at 25% 0%,#f9accb35,transparent 60%),linear-gradient(125deg,#a777ff20,#b492f92e,#65dbe51c),var(--hero);border-color:var(--edge);box-shadow:inset 0 1px 0 var(--edge),0 5px 0 var(--line),0 22px 45px #8156ae1c}
.intro h1 span{color:var(--accent);text-shadow:0 2px 0 var(--panel),0 8px 18px #8643b329}
.intro h1{max-width:75%}.intro-art{opacity:1;right:-45px;filter:drop-shadow(8px 16px 12px #8058b22b)}
.film-frame{background:linear-gradient(140deg,#ffffff6b,#c49af274 42%,#8580d749);border-color:#fff8;box-shadow:inset 2px 3px 2px #fff8,inset -5px -6px 9px #704ea833,7px 8px 0 #a384ca33,12px 22px 28px #73479e26}
.film-frame span{color:#ad72d8;text-shadow:1px 1px 0 #e8c2ff,2px 3px 0 #9052bb,5px 7px 0 #7e4ba044,8px 12px 15px #76539344}
.orbit-line{border-color:#9560bb55;box-shadow:0 1px 0 #fffa}.text-link{padding:8px 16px;border:1px solid var(--edge);border-radius:9px;background:var(--shine);box-shadow:0 3px 0 #8c57b321,0 6px 12px #8d56bc14}
.story-card{border-color:var(--edge);box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s,border-color .3s}
.story-body{background:linear-gradient(140deg,#c19aff0b,transparent 60%,#68ccdf0b)}
.story-card:nth-child(3n+2) .story-body{background:linear-gradient(140deg,#52b6bd13,transparent 65%,#8ecfc511)}
.story-card:nth-child(3n+3) .story-body{background:linear-gradient(140deg,#ff9da616,transparent 65%,#edbf5a0e)}
.story-art{box-shadow:inset 0 1px 0 #fff5;isolation:isolate}
.art-0{background:radial-gradient(circle at 22% 20%,#edb4f7,transparent 65%),linear-gradient(135deg,#b89bec,#7654ad)}
.art-1{background:radial-gradient(circle at 22% 20%,#b3efda,transparent 65%),linear-gradient(135deg,#72c7ce,#446aaf)}
.art-2{background:radial-gradient(circle at 22% 20%,#ffe0b7,transparent 65%),linear-gradient(135deg,#efa4bf,#ae68ab)}
.art-3{background:radial-gradient(circle at 22% 20%,#b6dbff,transparent 65%),linear-gradient(135deg,#98b3f6,#896ac5)}
.story-art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 20%,#fff4 45%,transparent 65%);transform:translateX(-120%);transition:transform .7s;z-index:2}
.art-orbit{filter:drop-shadow(5px 10px 6px #47356c55)}
.art-orbit i{border:2px solid #f8eaffb0;box-shadow:inset 1px 1px 0 #fff8,2px 3px 0 #64519533,0 0 16px #efe2ff2b}
.art-orbit span{color:#fff2ff;text-shadow:1px 2px 0 #e3beef,3px 4px 0 #ba94ce,5px 7px 0 #9775b3,9px 12px 12px #4c387c66}
.art-caption{color:#fff;text-shadow:0 1px 4px #2e154e;font-weight:600}
.art-arrow{background:#34214666;box-shadow:inset 0 1px 0 #fff6,0 3px 6px #44305c33}
.side-panel,.sidebar>.plugin{background:linear-gradient(135deg,#ac83ee10,transparent 65%),var(--panel);border-color:var(--edge);box-shadow:var(--shadow)}
.sidebar .latest{background:linear-gradient(140deg,#58bfc518,transparent 65%),var(--panel)}
.sidebar>.plugin-about{background:linear-gradient(140deg,#ef99ba1c,transparent 70%),var(--panel)}
.side-nav a:first-child{background:linear-gradient(110deg,var(--accent-soft),#b18be626);box-shadow:inset 0 1px 0 var(--edge),0 3px 8px #8b5eaa16}
.recent-number{opacity:1;color:var(--accent);text-shadow:1px 2px 0 var(--accent-soft)}
.article{border-color:var(--edge);box-shadow:var(--shadow);background:linear-gradient(145deg,#b38de810,transparent 40%),var(--panel)}
.article-header{border-bottom:1px solid var(--line);padding-bottom:26px}.article-content h2{color:var(--accent)}
.taxonomy a,.pagination a{box-shadow:inset 0 1px 0 var(--edge),0 3px 0 var(--line)}
.filter-label input{box-shadow:inset 0 2px 5px #5a368a0c,0 2px 0 var(--edge)}
.side-note>span{color:#ac7fdb;text-shadow:1px 2px 0 #e9c7ff,3px 4px 0 #a17dc555;filter:drop-shadow(0 6px 8px #aa6dd533)}
:root[data-theme=dark] .intro{background:radial-gradient(ellipse at 95% 60%,#645bc344,transparent 65%),linear-gradient(120deg,#3a1c4944,#221a38),var(--hero)}
:root[data-theme=dark] .story-card,:root[data-theme=dark] .side-panel,:root[data-theme=dark] .sidebar>.plugin{border-color:#a480dd33}
@media(hover:hover) and (pointer:fine){.story-card:hover{transform:perspective(1000px) translateY(-7px) rotateX(2deg);box-shadow:var(--lift-shadow);border-color:#bb91e8}.story-card:hover .story-art:after{transform:translateX(120%)}.recent-link:hover{transform:translateX(3px)}.recent-link{transition:transform .2s}.text-link:hover{transform:translateY(-2px)}.text-link{transition:transform .2s}}
@keyframes cinema-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}
@media(prefers-reduced-motion:no-preference){.intro-art{animation:cinema-float 7s ease-in-out 2}}
@media(max-width:1150px){.intro-art{opacity:.6;right:-95px}.intro h1{max-width:90%}}
@media(max-width:900px){.intro-art{right:-15px;opacity:.85}.intro h1{max-width:75%}}
@media(max-width:600px){.intro-art{right:-125px;opacity:.3}.intro h1{max-width:100%}.intro{box-shadow:inset 0 1px 0 var(--edge),0 4px 0 var(--line),0 14px 28px #8156ae1c}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.story-card:hover,.recent-link:hover,.text-link:hover,.brand:hover .brand-icon{transform:none}}
/* Match home cards: fill the mobile cover instead of showing background strips. */
@media(max-width:600px){.article-cover img{object-fit:cover}}
@media print{body,.article{background:white!important;box-shadow:none}.article-content h2{color:black}}
